home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / tcxl32.arc / TCXLKEY.H < prev    next >
Text File  |  1988-05-01  |  2KB  |  58 lines

  1.  
  2. /*
  3.    ┌──────────────────────────────────────────────────────────────────────────┐
  4.    │                                                                          │
  5.    │  TCXLKEY.H - TCXL (c) 1987, 1988 by Mike Smedley.                        │
  6.    │                                                                          │
  7.    │  This header file contains function prototypes and definitions for       │
  8.    │  keyboard functions.  Keyboard functions for windowing functions are     │
  9.    │  defined in TCXLWIN.H                                                    │
  10.    │                                                                          │
  11.    └──────────────────────────────────────────────────────────────────────────┘
  12. */
  13.  
  14.  
  15. #if __STDC__
  16. #define _Cdecl
  17. #else
  18. #define _Cdecl cdecl
  19. #endif
  20.  
  21.  
  22. /*---------------------------[ Function Prototypes ]-------------------------*/
  23.  
  24. int      _Cdecl getchf(char *valid);
  25. int      _Cdecl getns(char *str,int max);
  26. void     _Cdecl getxch(int *ch,int *xch);
  27. int      _Cdecl inputsf(char *str,char *fmt);
  28. int      _Cdecl waitkey(void);
  29.  
  30.  
  31. /*-------------[ keyboard status codes returned from kbstat() ]--------------*/
  32.  
  33. #define RSHIFT      1                   /*  right shift pressed          */
  34. #define LSHIFT      2                   /*  left shift pressed           */
  35. #define CTRL        4                   /*  <Ctrl> pressed               */
  36. #define ALT         8                   /*  <Alt> pressed                */
  37. #define SCRLOCK     16                  /*  <Scroll Lock> toggled        */
  38. #define NUMLOCK     32                  /*  <Num Lock> toggled           */
  39. #define CAPSLOCK    64                  /*  <Caps Lock> toggled          */
  40. #define INS         128                 /*  <Ins> toggled                */
  41.  
  42.  
  43. /*---------------[ seg,ofs address of keyboard status flag ]-----------------*/
  44.  
  45. #define KBFLAG      0,0x417
  46.  
  47.  
  48. /*-----------------------[ macro-function definitions ]-----------------------*/
  49.  
  50. #define capsoff()           poke(KBFLAG,peek(KBFLAG)&191)
  51. #define capson()            poke(KBFLAG,peek(KBFLAG)|64)
  52. #define clearkeys()         while(kbhit()) getch()
  53. #define kbstat()            peek(KBFLAG)
  54. #define numoff()            poke(KBFLAG,peek(KBFLAG)&223)
  55. #define numon()             poke(KBFLAG,peek(KBFLAG)|32)
  56. #define prompts(pr,st)      printf("%s",pr);gets(st)
  57.  
  58.